System and method for instant purchase transactions via image recognition

ABSTRACT

A system and related method for completing online transactions via mobile device includes a client-side e-commerce platform executing on the mobile device that identifies candidate items for purchase based on images related to an item desired by the user. The client-side platform determines attributes of the item based on an image captured by an onboard camera or otherwise stored on, or downloaded to, the mobile device. Purchase information for items offered by participating vendors, or third-party vendors, is retrieved by the platform via APIs of the vendor network or automated middleware respectively. The user may select items for purchase and complete the transaction via single click, and the middleware forwards payment details to the third-party vendors and retrieves purchase information and transaction records from the third-party vendors. The client-side platform generates a single transaction and invoice whether the selected items are purchased from in-network or third-party vendors.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present patent application is a continuation of U.S. patentapplication Ser. No. 15/076,308, filed 21 Mar. 2016, which claims thebenefit of U.S. Provisional Patent Applications 62/136,172, filed 20Mar. 2015, and 62/136,205, filed 20 Mar. 2015. The entire content ofeach aforementioned patent filing is hereby incorporated by reference.

BACKGROUND

Current systems for web-based purchasing or mobile purchasing (e.g., viaan internet-enabled smartphone or similar mobile device) incorporate anApplication Programming Interface (API) to manage the exchange ofinformation between a broad variety of client-side and merchant-sidesystems. APIs may be created by the parties involved in thetransactions, and may to some extent be standardized, as within anetwork of participating vendors affiliated with each other and with aclient-side platform. If, for example, the end user of a mobile devicewishes to purchase multiple items from multiple third-party vendorsoutside a vendor network, the simultaneous invocation of multiplediverse APIs by a mobile application may slow or disrupt other activityon the mobile device. It may therefore be desirable for a mobilepurchase system to simultaneously manage multiple purchases, fromparticipating and third-party vendors, in real time without disruptingthe experience of the end user. It may additionally be desirable for amobile purchasing system to allow an end user to identify and purchase adesired item or product via visual recognition of the item, even if theend user has no prior knowledge of a nearby retailer who may stock theitem or even of the manufacturer of the item.

SUMMARY

In a first aspect, embodiments of the inventive concepts disclosedherein are directed to a system for purchasing items identified viaimage recognition from multiple vendors via a smartphone or similarmobile device. The system may include a mobile device utilized by an enduser, e.g., a prospective customer wishing to locate and purchase one ormore desired items. The mobile device may include processors, atouch-sensitive display screen, and a memory for securely storing theend user's payment information. The system may include a client-sidee-commerce platform executing on the mobile device, the client-sideplatform associated with a network of one or more affiliated vendors.The client-side platform may acquire images corresponding to the desireditems via the camera of the mobile device, or from the library of imagesstored to the memory of the mobile device. The client-side platform mayidentify attributes of the desired items based on the images, generatingordered sets of candidate items based on the similarity of the candidateitems to the attributes of the desired items. The system may allow theend user to select, via the client-side platform, candidate items forpurchase, whether the candidate items are offered by affiliated vendorsor by third-party vendors not affiliated with a vendor network. Theclient-side platform may retrieve pricing, inventory, and other purchaseinformation from affiliated vendors by calling Application ProgrammingInterfaces (APIs) of the affiliated vendors or vendor networks; purchaseinformation may be retrieved from third-party vendors by automatedmiddleware platforms called by the client-side platform to connect withplatforms of the third-party vendors. The client-side platform maygenerate transactions based on the selected items based on the retrievedpurchase information and end-user payment details stored in memory. Whenthe end user completes the transaction (e.g., via single-click checkoutor security challenge), the client-side platform may provide theend-user payment details to affiliated vendors (so that the affiliatedvendors may execute the transaction) via the network APIs. Theclient-side platform may provide end-user payment details to theplatforms of third-party vendors via the middleware platforms. When thepurchase is confirmed, the client-side platform may retrieve transactionrecords from the affiliated vendors via the network APIs; theclient-side platform may retrieve transaction records from the platformsof third-party vendors via the middleware platforms. The client-sideplatform may generate an invoice for each completed and executedtransaction involving one or more purchased items, based on thetransaction records retrieved from the affiliated and third-partyvendors.

In a further aspect, embodiments of the inventive concepts disclosedherein are directed to a method for purchasing items identified viaimage recognition from multiple vendors via a smartphone or similarmobile device. The method may include acquiring images portrayingproducts desired by an end user via a client-side e-commerce platformexecuting on the end user's mobile device, which includes a memory forsecurely storing payment details provided by the end user; theclient-side platform may be associated with a vendor network ofaffiliated or participating vendors. The method may include identifyingone or more attributes of the desired items based on the acquiredimages. The method may include identifying, and generating an ordered orranked set of, candidate items based on their similarity to thedetermined product attributes. The method may include selecting from theidentified candidate items sale items the end user wishes to purchasefrom either the affiliated vendors or from third-party vendorsunaffiliated with the vendor network. The method may include determiningprices, sizes, quantities, and other purchase details associated withthe purchase of the selected sale items. The method may includegenerating a transaction for the purchase of the selected sale items,based on the determined purchase details and the end user's paymentdetails. The method may include providing the end user's payment detailsto the affiliated vendors and third-party vendors for execution of thecompleted transaction. The method may include retrieving authorizationcodes and purchase confirmations from the affiliated vendors andthird-party vendors, and generating an invoice of the completed andexecuted transaction for the end user.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory onlyand are not necessarily restrictive of the invention as claimed. Theaccompanying drawings, which are incorporated in and constitute a partof the specification, illustrate embodiments of the invention andtogether with the general description, serve to explain the principlesof the invention.

BRIEF DESCRIPTION OF THE FIGURES

Implementations of the inventive concepts disclosed herein may be betterunderstood when consideration is given to the following detaileddescription thereof. Such description makes reference to the includeddrawings, which are not necessarily to scale, and in which some featuresmay be exaggerated and some features may be omitted or may berepresented schematically in the interest of clarity. Like referencenumerals in the drawings may represent and refer to the same or similarelement, feature, or function. In the drawings:

FIG. 1 is a schematic diagram of an exemplary embodiment of a systemaccording to the inventive concepts disclosed herein; and

FIGS. 2A-2D illustrate operations of the system of FIG. 1 according tothe inventive concepts disclosed herein; and

FIGS. 3A-3B are process flow diagrams illustrating a method according tothe inventive concepts disclosed herein.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

Before explaining at least one embodiment of the inventive conceptsdisclosed herein in detail, it is to be understood that the inventiveconcepts are not limited in their application to the details ofconstruction and the arrangement of the components or steps ormethodologies set forth in the following description or illustrated inthe drawings. In the following detailed description of embodiments ofthe instant inventive concepts, numerous specific details are set forthin order to provide a more thorough understanding of the inventiveconcepts. However, it will be apparent to one of ordinary skill in theart having the benefit of the instant disclosure that the inventiveconcepts disclosed herein may be practiced without these specificdetails. In other instances, well-known features may not be described indetail to avoid unnecessarily complicating the instant disclosure. Theinventive concepts disclosed herein are capable of other embodiments orof being practiced or carried out in various ways. Also, it is to beunderstood that the phraseology and terminology employed herein is forthe purpose of description and should not be regarded as limiting.

As used herein a letter following a reference numeral is intended toreference an embodiment of the feature or element that may be similar,but not necessarily identical, to a previously described element orfeature bearing the same reference numeral (e.g., 1, 1a, 1b). Suchshorthand notations are used for purposes of convenience only, andshould not be construed to limit the inventive concepts disclosed hereinin any way unless expressly stated to the contrary.

Further, unless expressly stated to the contrary, “or” refers to aninclusive or and not to an exclusive or. For example, a condition A or Bis satisfied by anyone of the following: A is true (or present) and B isfalse (or not present), A is false (or not present) and B is true (orpresent), and both A and B are true (or present).

In addition, use of the “a” or “an” are employed to describe elementsand components of embodiments of the instant inventive concepts. This isdone merely for convenience and to give a general sense of the inventiveconcepts, and “a’ and “an” are intended to include one or at least oneand the singular also includes the plural unless it is obvious that itis meant otherwise.

Finally, as used herein any reference to “one embodiment,” or “someembodiments” means that a particular element, feature, structure, orcharacteristic described in connection with the embodiment is includedin at least one embodiment of the inventive concepts disclosed herein.The appearances of the phrase “in some embodiments” in various places inthe specification are not necessarily all referring to the sameembodiment, and embodiments of the inventive concepts disclosed mayinclude one or more of the features expressly described or inherentlypresent herein, or any combination of sub-combination of two or moresuch features, along with any other features which may not necessarilybe expressly described or inherently present in the instant disclosure.

Broadly, embodiments of the inventive concepts disclosed herein aredirected to a system and related method for managing and completinginstant online transactions via a smartphone or similar mobile device.The transactions may involve the concurrent purchase of items fromin-network, or affiliated, vendors as well as from third-partyunaffiliated vendors. The user provides the system with an image of adesired item; based on attributes of the image, the system returnscandidate items approximating the desired item. From the perspective ofthe mobile end user, the candidate items are presented in a consistentand uniform fashion, and may be purchased via single-click checkoutwithout disrupting the end user's utilization of the mobile deviceregardless of the offering vendor (i.e., in-network or third-party).Upon checkout, the user may receive a single invoice for a singletransaction incorporating multiple purchases from multiple vendors.

Referring to FIG. 1 , a system 100 for completing instant onlinetransactions may include a client-side e-commerce platform 102configured to execute on one or more processors of a smartphone orsimilar mobile device 104. The mobile device 104 may include an onboardcamera 106 and memory 108 which the client-side platform 102 may accessand control, e.g., the end user may capture images via the onboardcamera 106 from within the client-side platform 102. The memory 108 maystore images 110 previously captured by the onboard camera 106 orotherwise stored to the mobile device 102 (e.g., downloaded by the enduser) as well as payment details 112 entered by the end user via aninitialization process when the client-side platform 102 is installed onthe mobile device 104. For example, the client-side platform 102 may askthe end user for his/her name, shipping address, credit/debit cardinformation, bank/payment service account information, and any otherrelevant information necessary for the client-side platform 102 tocomplete a transaction, securely storing the information to the memory108. Payment details 112 stored in the memory 108 may include securitydetails for verifying the identity of the end user, or if additionalmeasures of security are desired. For example, the end user may store apassword, pass phrase, personal identification number (PIN), orencryption key to memory 108. A security detail stored in the memory 108may incorporate biometric data, such as a recorded fingerprint,eyeprint, or retinal scan.

The end user may activate the client-side platform 102 via the mobiledevice 104 when the end user wishes to purchase one or more desireditems 116, e.g., articles of clothing or other consumer goods, such as apair of white leather Converse high-top basketball shoes. Theclient-side platform 102 may search product catalogues and other onlinesources to identify candidate items (114) based on images captured by,or selected by, the end user via the client-side platform. For example,referring also to FIGS. 2A and 2B, the end user may photograph thedesired item 116 through the client-side platform 102, which accessesthe onboard camera 106 to capture the image 138. The end user mayphotograph a circular, advertisement, magazine, or other prefabricatedimage portraying the desired item 116. The end user may also select, viathe client-side platform 102, a previously captured or downloaded image138 from a photo library and stored to the memory 108 of the mobiledevice 104. Based on an analysis of the captured image, the client-sideplatform 102 may determine attributes 140 of the desired item (e.g.,attributes of an item of clothing may include color, material, gender,and other item categorizations such as shoes, belts, jackets, etc.). Forexample, the client-side platform may determine that the captured image138 depicts a “white Converse hightop leather shoe”. The quality of animage 138 submitted to the client-side platform 102 a may determine theaccuracy of the attributes 140 based on the image. For example, if ahigh quality image 138 is captured by the onboard camera 106, theclient-side platform may determine with sufficient confidence that thedesired item 116 is a 1) hightop basketball shoe; 2) a Converse-brandedbasketball shoe (or perhaps an even more specific make of shoe, e.g.,Converse Chuck Taylor); 3) a white shoe, as opposed to gray, beige, orsome other color; 4) a leather shoe, as opposed to a canvas shoe; and 5)a men's shoe, as opposed to a women's or unisex shoe. If the submittedimage is of lower quality, e.g., a monochrome image or a low-resolutionimage, fewer attributes 140 may be determined with confidence; theclient-side platform 102 may determine only that the desired item is a“white hightop shoe”. The client-side platform 102 may referenceknowledge bases stored on external servers or human assistance inidentifying item attributes 140 from an image 138. The client-sideplatform 102 may determine image attributes 140 based on analysis of theimage 138, e.g., colors, tints, hues, saturation and brightness levels,or pixel patterns, and identify candidate items 116 by attempting toidentify catalogued or online images with similar properties to thecaptured image 138.

Once item attributes 140 based on a captured image 138 have beenidentified, the client-side platform 102 may search for candidate items114 matching the determined item attributes 140 through a variety ofonline catalogues or product indices. If the client-side platform 102 isaffiliated with a vendor network 120 of participating vendors 122 a-c,the client-side platform may search catalogues organized by the vendornetwork 120 or by individual in-network vendors 122 a-c. The client-sideplatform 102 may provide single-click access (e.g., through tapping atouch-sensitive display screen 124 of the mobile device 104) toadditional product offers, coupons, or sales associated with the vendornetwork 120 or with individual in-network vendors 122 a-c. Theclient-side platform 102 may order and display identified candidateitems 114 based on the relevance or similarity of a candidate item tothe desired item 116 or to the corresponding attributes 140 of thedesired item. For example, referring particularly to FIG. 2C, theclient-side platform 102 may return twenty-four candidate items 114corresponding to the determined attributes 140 as shown in FIG. 2B(“white Converse hightop leather shoe”) and display the candidate itemson the display screen 124 of the mobile device 104. A candidate item 114a may be prominently displayed if the attributes of the candidate itemmatch the attributes 140 of the desired item 116 exactly or nearlyexactly. For example, the candidate item 114 a may be a pair of whiteleather Converse hightop shoes and thus match exactly the desiredattributes 140. The client-side platform 102 may retrieve and displaycatalogued information such as the price 142 of the candidate item 114 aor the vendor 122 offering the candidate item (here, vendor XYZ is anin-network vendor 122 affiliated with a vendor network (120, FIG. 1 )with which the client-side platform 102 is affiliated). A secondcandidate item 114 b, also offered by the vendor XYZ (122), may beprominently displayed by the client-side platform 102 although thecandidate item 114 b may not as closely match the desired attributes 140(e.g., candidate item 114 b may be a pair of black canvas Conversehightop shoes). Similarly, candidate items 114 c (a pair of white canvaslowtop shoes which may or may not be Converse-branded) and 114 d (a pairof white leather Nike hightop shoes) may be less prominently displayed.The less relevant candidate items 114 c and 114 d may be offered by athird-party vendor ABC (126), which is not affiliated with the vendornetwork 120.

Referring also to FIG. 2D, the user may select one or more displayedcandidate items 114 a-d for purchase. For example, the user may click,tap, or otherwise contact the portion of the display screen 124corresponding to the candidate item 114 a, selecting that candidate itemfor purchase. If the selected item 118 is offered by an in-networkvendor 122 (in this case, the in-network vendor XYZ), the client-sideplatform 102 may call network APIs 130 (FIG. 1 ) provided by thein-network vendor 122 (or by the vendor network 120 with which XYZ isaffiliated) to retrieve current pricing and inventory information suchas the item description 144 of the selected item 118 as well as thecurrent price 146. The client-side platform 102 may call network APIs130 to retrieve any shipping details or tax rates applicable to thepurchase of the selected item 118, and allow the end user to select adesired size, color, quantity or other classification of the selecteditem 118 based on available inventory 148 determined by the network APIs130 (e.g., one pair, US size 10½). The available inventory section 148may indicate (148 a) whether particular sizes, styles, or colors of aselected item 118 are out of stock or otherwise unavailable, e.g., USsizes 9½ and 10). Once the end user has finalized inventory detailsassociated with the purchase of a selected item 118, the end user mayadd the selected item 118 to a transaction generated by the client-sideplatform 102, e.g., by clicking or tapping on a designated portion 150(e.g., a button marked “buy now”) of the display screen 124 of themobile device 104. The end user may complete a generated transaction forthe purchase of multiple selected items 118 via single-click checkout(136) or security challenge, depending on the desired level of security.For example, the client-side platform 102 may display a list of selecteditems 118 added to the transaction along with the price 146 of each item(including any applicable taxes and shipping costs); the end user maycontinue shopping, remove a selected item 118 from the transaction, orcomplete the transaction, purchasing the group of selected items 118, bytapping or clicking a designated “checkout” section of the displayscreen 124. The client-side platform 102 may (e.g., if the end user haspreviously requested such measures) require the end user to verify asecurity detail (securely stored with the end user's payment details 112in the memory 108 of the mobile device 104) before completing atransaction. For example, the end user may be required to enter,confirm, or verify a password, pass phrase, PIN, encryption key, or abiometric detail such as a fingerprint or eyeprint.

Referring back to FIG. 1 , once the end user has selected a pool ofselected items 118 for purchase and checked out of the transaction, theclient-side platform 102 may retrieve any information necessary for thepurchase of each selected item 118. In the case of items to be purchasedfrom in-network vendors 122 a-c, the client-side platform 102 may callthe network APIs 130, providing any required payment details 112 to thein-network vendors 112 a-c so that the purchase of each individualselected item 118 of a transaction may be completed on the merchant sideby the APIs. The client-side platform 102 may retrieve from the APIs 130any shipping arrangements, applicable taxes, item availability details(e.g., in-stock colors, sizes, etc.) relevant to the purchase ofselected items 118 from the in-network vendors 122 a-c. With respect toselected items 118 offered by third-party vendors 126 a-c, theclient-side platform 102 may invoke an automated middleware platform 132to connect the client-side platform to merchant-side e-commerceplatforms 134 a-c of the third-party vendors 126 a-c. The middlewareplatform 132 may retrieve any current pricing, availability, shipping,and other purchase information necessary to finalize the purchase ofselected items 118 from the third-party vendors 126 a-c, providing theretrieved purchase information to the client-side platform 102.

When any necessary purchase information has been retrieved, theclient-side platform 102 may prompt the end user to complete thetransaction (i.e., checkout) by displaying to the end user a generatedtransaction (136) for the purchase of all available selected items 118,which transaction the end user may complete via interaction with thedisplay screen 124 of the mobile device 104. For example, theclient-side platform 102 may display a generated transaction 136 listingall selected items 118 to be purchased, the specific vendors from whicheach item will be purchased (including in-network vendors 122 a-c andthird-party vendors 126 a-c), and the accurate and current sale pricefor each selected item 118; the end user may complete the transaction byclicking or tapping a specific portion of the screen, e.g., aprominently marked “buy now” button. When the end user completes thetransaction, the client-side platform 102 may provide the relevantin-network vendors 122 a-c with the end user's payment details 112, andretrieve any authorization codes, payment confirmations, or otherrecords of the transaction, from the in-network vendors 122 a-c via thenetwork APIs 130. Similarly, the middleware platform 132 may retrieveuser payment details 112 from the client-side platform 102 and forwardany required payment details to the merchant-side platforms 134 a-c ofthe relevant third-party vendors 126 a-c so that any transactions forpurchase of selected items 118 from the third-party vendors may becompleted by the third party vendors. The middleware platform 132 mayretrieve any resulting authorization codes, payment confirmations,tracking numbers, or other transaction records from the relevantmerchant-side platforms 134 a-c and forward the retrieved information tothe client-side platform 102. The client-side platform 102 may generatefor the end user an invoice of the transaction, which may be displayedvia the display screen 124 of the mobile device 104; the generatedinvoice may include the retrieved authorization codes and othertransaction records.

Referring to FIGS. 3A and 3B, an exemplary embodiment of a method 200for purchasing items identified via image recognition from multiplevendors using a mobile device may include the following steps.

At a step 202, the client-side platform 102 acquires images 138corresponding to a desired product or item 116 via the mobile device 104on which the client-side platform executes (via processors of the mobiledevice). For example, the client-side platform 102 may capture images138 via an onboard camera 106 of the mobile device 104, or acquireimages selected by the end user and stored in the memory 108 of themobile device. The memory 108 of the mobile device 104 may securelystore payment details 112 of the end user, including security details.The client-side platform 102 may be associated with a vendor network 120of one or more affiliated or in-network vendors 122 a-c.

At a step 204, the client-side platform 102 identifies one or more itemattributes 140 corresponding to the desired item 116 based on theacquired images 138. For example, the client-side platform 102 mayanalyze the acquired images 138 to determine textual attributes 140 suchas a size, a brand, an item classification, a material, or a color. Theclient-side platform 102 may analyze the acquired images 138 to identifycolors, shades, patterns, and other image attributes 140 correspondingto the acquired images.

At a step 206, the client-side platform 102 identifies candidate items114 based on the identified attributes 140. At a step 208, theclient-side platform 102 generates an ordered list of the candidateitems 114 based on the identified attributes 140. For example, thecandidate items 114 may be ordered or ranked in order of relevance orsimilarity to the desired item 116, and displayed on the display screen124 of the mobile device 104 according to their relevance.

At a step 210, the client-side platform 102 selects one or morecandidate items 114 for purchase (118) from an in-network vendor 122 a-cof the vendor network 120 or from a third-party vendor 126 a-c notaffiliated with the vendor network.

Referring to FIG. 3B, at a step 212, the client-side platform 102determines prices, inventory, shipping, and other purchase detailsassociated with the purchase of selected items 118 from the in-networkvendors 122 a-c or from the third-party vendors 126 a-c. For example,the client-side platform 102 may retrieve purchase information from thein-network vendors 122 a-c via APIs 130 of the vendor network 120, andthe client-side platform may retrieve purchase information frommerchant-side platforms 134 a-c of the third-party vendors 126 a-c bycalling the middleware platforms 132.

At a step 214, the client-side platform 102 generates a transactioncorresponding to the purchase of the selected items 118, including thepurchase information retrieved from the in-network vendors 122 a-c viathe network APIs 130 and from the third-party vendors 126 a-c via themiddleware platforms 132 and the stored payment details 112 of the enduser. The transaction may be completed by the end user via aninteraction with the mobile device 104, such as a click or tap on thedisplay screen 124 of the mobile device (e.g., a single-click “checkout”button displayed with the transaction details) or a verification of asecurity detail (such as a password, PIN, or biometric detail) securelystored with the end user's payment details 112 in the memory 108 of themobile device 104.

At a step 216, the client-side platform 102 provides the necessarypayment details 112 of the end user to the appropriate in-networkvendors 122 a-c and third-party vendors 126 a-c so that the completedtransaction can be executed on the merchant side. For example, theclient-side platform 102 may provide payment details 112 to thein-network vendors 122 a-c or vendor network 120 via the network APIs130, and to the merchant-side platforms 134 a-c of the third-partyvendors 126 a-c via the middleware platform 132.

At a step 218, the client-side platform 102 retrieves authorizationcodes, purchase confirmations, and other records of the executedtransaction from the in-network vendors 122 a-c and the third-partyvendors 126 a-c. For example, the client-side platform 102 may retrievetransaction records from the in-network vendors 122 a-c or vendornetwork 120 via the network APIs 130, and from the merchant-sideplatforms 134 a-c of the third-party vendors 126 a-c via the middlewareplatform 132.

At a step 220, the client-side platform 102 generates an invoice of theexecuted transaction, including the transaction records retrieved fromthe in-network vendors 122 a-c and the third-party vendors 126 a-c.

As will be appreciated from the above, systems and methods according toembodiments of the inventive concepts disclosed herein may enable theonline purchase via mobile device of multiple items based on images ofthe desired items in real time, without disrupting any mobile activityon the part of the end user. The end user need not have prior knowledgeof where a desired product or item is sold locally, or even the detailsof its manufacture. The end user may locate and select items forpurchase from both participating/in-network vendors as well asthird-party vendors, viewing a single transaction completable by asingle click and receiving a single invoice of the transactionregardless of the vendors from which each item is purchased.

It is to be understood that embodiments of the methods according to theinventive concepts disclosed herein may include one or more of the stepsdescribed herein. Further, such steps may be carried out in any desiredorder and two or more of the steps may be carried out simultaneouslywith one another. Two or more of the steps disclosed herein may becombined in a single step, and in some embodiments, one or more of thesteps may be carried out as two or more sub-steps. Further, other stepsor sub-steps may be carried in addition to, or as substitutes to one ormore of the steps disclosed herein.

From the above description, it is clear that the inventive conceptsdisclosed herein are well adapted to carry out the objects and to attainthe advantages mentioned herein as well as those inherent in theinventive concepts disclosed herein. While presently preferredembodiments of the inventive concepts disclosed herein have beendescribed for purposes of this disclosure, it will be understood thatnumerous changes may be made which will readily suggest themselves tothose skilled in the art and which are accomplished within the broadscope and coverage of the inventive concepts disclosed and claimedherein.

We claim:
 1. One or more tangible, non-transitory, computer-readablemedia storing instructions that when executed by one or more processorseffectuate operations comprising: obtaining, with a computer system, animage from an imaging device or a memory; determining, with the computersystem, with image recognition, a plurality of attributes of an objectdepicted in the image; determining, with the computer system, based onthe plurality of attributes, a first set of candidate items and a secondset of candidate items, wherein each of the first set of candidate itemsis available for purchase from a first vendor and each of the second setof candidate items is available for purchase from a second vendor; andcausing, with the computer system, a user interface to be presented, theuser interface comprising descriptions of the first set of candidateitems and descriptions of the second set of candidate items, wherein thefirst vendor is part of a vendor affiliate network including a pluralityof vendors, wherein the user interface is configured to respond to auser selection of a first item from the first set of candidate items bycausing the computer system to interface with an additional computersystem of the first vendor via an application program interface (API)request of an API of the vendor affiliate network, wherein API of thevendor affiliate network is supported by each of the plurality ofvendors; wherein the second vendor is not part of the vendor affiliatenetwork; wherein the user interface is configured to respond to a userselection of a second item from the second set of candidate items bycausing the computer system to interface with an additional computersystem of the second vendor via an additional API that is different fromthe API of the vendor affiliate network; wherein the additional API isconfigured to cause a third-party computer system to place the computersystem in communication with the additional computer system of thesecond vendor to obtain purchase information associated with the seconditem; wherein the API request is configured to cause the computer systemto obtain purchase information of the first item from the additionalcomputer system of the first vendor, the purchase information comprisingavailable sizes and colors of the first item; and wherein the purchaseinformation of the first item and the purchase information of the seconditem are presented within the user interface.
 2. One or more tangible,non-transitory, computer-readable media storing instructions that whenexecuted by one or more processors effectuate operations comprising:obtaining, with a computer system, an image from an imaging device or amemory; determining, with the computer system, with image recognition, aplurality of attributes of an object depicted in the image; determining,with the computer system, based on the plurality of attributes, a firstset of candidate items and a second set of candidate items, wherein eachof the first set of candidate items is available for purchase from afirst vendor and each of the second set of candidate items is availablefor purchase from a second vendor; and causing, with the computersystem, a user interface to be presented, the user interface comprisingdescriptions of the first set of candidate items and descriptions of thesecond set of candidate items, wherein: each candidate item of the firstset of candidate items is selected from a first online catalog of itemsavailable for purchase from the first vendor; the first online catalogof items comprises an image depicting each item; each image from thefirst online catalog of items is analyzed to determine attributes of acorresponding item depicted therein; a determination is made indicatinghow closely the plurality of attributes of the object depicted in theimage match the attributes of the corresponding item depicted in eachimage from the first online catalog of items; each candidate item of thesecond set of candidate items is selected from a second online catalogof items available for purchase from the second vendor; the secondonline catalog of items comprises an image depicting each item; eachimage from the second online catalog of items is analyzed to determineattributes of the corresponding item; a determination is made indicatinghow closely the plurality of attributes of the object depicted in theimage match the attributes of the corresponding item depicted in eachimage from the second online catalog of items; the descriptions of thefirst set of candidate items and the descriptions of the second set ofcandidate items are presented within the user interface in an orderbased on the determination indicating how closely the plurality ofattributes of the object depicted in the image match the attributes ofthe corresponding item depicted in each image from the first onlinecatalog of items and how closely the plurality of attributes of theobject depicted in the image match the attributes of the correspondingitem depicted in each image from the second online catalog of items; thefirst online catalog of items is obtained via a first set of applicationprogram interface (API) requests; the first online catalog comprisesidentifiers of images of items purchasable from the first vendor andsubmitted via the first set of API requests; the second online catalogof items is obtained via a second set of application program interface(API) requests; the second online catalog comprises identifiers ofimages of items purchasable from the second vendor and submitted via thesecond set of API requests; and the second online catalog of itemsdiffers from the first online catalog of items.
 3. The one or more mediaof claim 1, wherein: the first set of candidate items is selected from afirst online catalog of items available for purchase from the firstvendor based on the plurality of attributes; the second set of candidateitems is selected from a second online catalog of items available forpurchase from the second vendor based on the plurality of attributes;the descriptions of the first set of candidate items and thedescriptions of the second set of candidate items are presented withinthe user interface in a ranked order, wherein the ranked order isdetermined by: matching the image depicting the object to imagesassociated with each candidate item from the first set of candidateitems to determine how closely the plurality of attributes of the objectdepicted in the image match pluralities of attributes of each item fromthe first catalog of items depicted in the images, matching the imagedepicting the object to images associated with each candidate item fromthe second set of candidate items to determine how closely the pluralityof attributes of the object depicted in the image match pluralities ofattributes of each item from the second catalog of items depicted in theimages, and ranking the images associated with the first set ofcandidate items and the images associated with the second set ofcandidate items from most relevant to least relevant based on howclosely the plurality of attributes of the plurality of attributes ofthe object depicted in the image match the pluralities of attributes ofeach item from the first catalog of items and how closely the pluralityof attributes of the object depicted in the image match the pluralitiesof attributes of each item from the second catalog of items,respectively.
 4. The one or more media of claim 1, wherein: the computersystem comprises a mobile device; the image is captured using a cameraof the mobile device or is selected by an end user via the mobiledevice; determining the plurality of attributes of the object depictedin the image comprises determining the plurality of attributes of theobject prior to a search to identify candidate items being performed,the search resulting in the first set of candidate items and the secondset of candidate items being determined; and the search includes anindication of the plurality of attributes of the object as a searchcriterion.
 5. The one or more media of claim 1, wherein: obtaining theimage comprises receiving the image from a mobile device at a server;and the descriptions of the first set of candidate items and thedescriptions of the second set of candidate items comprise images ofcandidate items, pricing information, and vendor information, which issent to the mobile device for presentation within the user interface. 6.The one or more media of claim 1, wherein the image is obtained from amobile device, the operations further comprise: determining that an itemfrom the second set of candidate items has been selected for purchase,wherein the first vendor is affiliated with a vendor network hosted bythe computer system and the second vendor is unaffiliated with thevendor network; obtaining pricing and purchasing information associatedwith the selected item with a workflow selected responsive to the secondvendor being unaffiliated with the vendor network; causing the pricingand purchasing information associated with the item to be provided tothe mobile device; and obtaining user information from a user's accountof an end user of the mobile device for purchasing the item; and stepsfor facilitating single-click checkout.
 7. The one or more media ofclaim 1, wherein the operations further comprise: obtaining, with thecomputer system, a first online catalog of items associated with thefirst vendor, the first online catalog of items comprising a firstplurality of items and associating respective items from the firstplurality of items with respective images of the respective items;obtaining, with the computer system, a second online catalog of itemsassociated with the second vendor, the second online catalog of itemscomprising a second plurality of items and associating the respectiveitems from the second plurality of items with respective images of therespective items; extracting, with the computer system, attributes ofeach of the first plurality of items in the first online catalog ofitems and attributes of each of the second plurality of items in thesecond online catalog of items from the respective images with an imagerecognition tool implementing one or more visual recognition algorithms,wherein: determining the first set of candidate items and the second setof candidate items comprises: determining, based on comparisons of theplurality of attributes of the object depicted in the image and theattributes of each of the first plurality of items in the first onlinecatalog of items and each of the second plurality of items in the secondonline catalog of items, how closely the object matches items in thefirst online catalog of items and items in the second online catalog ofitems, selecting the first set of candidate items from the first onlinecatalog based on how closely the first set of items are determined tomatch the object, and selecting the second set of candidate items fromthe second online catalog based on how closely the set of items aredetermined to match the object, and wherein: the user interfacecomprising the descriptions of the first set of candidate items and thedescriptions of the second set of candidate items comprises a grid ofimages, each image in the grid depicts a different item from the firstset of candidate items and the second set of candidate items, images inthe grid are arranged based on how closely the object matches to therespective item from the first set of candidate items and the second setof candidate items, and the grid provides single-touch access tocomputer systems of the first vendor, the second vendor, or both thefirst vendor and the second vendor.
 8. The one or more media of claim 1,wherein the operations further comprise: accounting for first variationsin lighting to determine how closely the object depicted in the imagematches items in a first online catalog of items associated with thefirst vendor and how closely the object depicted in the image matchesitems in a second online catalog of items associated with the secondvendor, the accounting for the first variations being performed by afirst image recognition tool of a plurality of image recognition tools;and accounting for second variations in visual angle to determine howclosely the object depicted in the image matches to items in the firstonline catalog of items associated with the first vendor and how closelythe object depicted in the image matches items in the second onlinecatalog of items associated with the second vendor, the accounting forthe second variation being performed by a second image recognition toolof the plurality of image recognition tools, wherein: the first imagerecognition tool and the second image recognition tool are the sameimage recognition tool, or the first image recognition tool differs fromthe second image recognition tool.
 9. The one or more media of claim 1,wherein the operations further comprise: obtaining, with the computersystem, a first online catalog of items associated with the firstvendor, the first online catalog of items comprising a first pluralityof items and associating respective items with respective images of therespective items; obtaining, with the computer system, a second onlinecatalog of items associated with the second vendor, the second onlinecatalog of items comprising a second plurality of items and associatingthe respective items with respective images of the respective items;extracting first attributes of each of the first plurality of items inthe first online catalog of items and second attributes of each of thesecond plurality of items in the second online catalog of items, thefirst attributes and the second attributes comprising textual attributesand other attributes, wherein extracting the first attributes and thesecond attributes comprises one of: detecting features in images of thefirst plurality of items and in images of the second plurality of items,the extracted first attributes and the extracted second attributesincluding color, material, gender, and other item categorizations, orinterpolating a shape of a three-dimensional object from a plurality oftwo-dimensional images, wherein at least one of the first set ofcandidate items and the second set of candidate items is selected basedon the interpolated shape; eliminating, in a first analysis, items ofthe first plurality of items from the first online catalog of itemshaving images that do not correspond to the textual attributes; andeliminating, in a second analysis, items of the first plurality of itemsfrom the first online catalog of items with image recognition, wherein:the first set of candidate items comprises the items from the firstplurality of items of the first online catalog remaining after the firstanalysis and the second analysis, and the second analysis is performedafter the first analysis on prospective matching items that are noteliminated in the first analysis.
 10. The one or more media of claim 1,wherein the operations further comprise: instantiating a firste-commerce platform, wherein memory of the computer system is configuredto securely store at least one payment detail corresponding to an enduser of the computer system, wherein the at least one payment detailincludes at least one of: a user identity, an address, an accountnumber, a method of payment, or a security detail, the security detailincluding at least one of a password, a personal identification number(PIN), or a biometric detail and the first e-commerce platform beingassociated with a vendor network including the first vendor, andwherein: the first e-commerce platform being configured to: determinethat at least a first item purchasable from the first vendor and asecond item purchasable from the second vendor were selected, whereinthe first item was selected from the first set of candidate items andthe second item was selected from the second set of candidate items, andwherein the second vendor is external to the vendor network; determineone or more first purchase details associated with the first item viathe API, the API being associated with the first vendor, the vendornetwork, or the first vendor and the vendor network; determine one ormore second purchase details associated with the second item via amiddleware platform invoked by the first e-commerce platform, themiddleware platform being configured to connect the first e-commerceplatform to a second e-commerce platform associated with the secondvendor, wherein the one or more first purchase details and the one ormore second purchase details include at least one of: a vendor identity,an availability, a price, a tax, a shipping cost, a color, a size, adimension, a quantity, or a material associated with at least the firstitem and the second item; cause at least one transaction correspondingto a purchase of the first item and the second item to be generatedbased on at least one of: the one or more first purchase details, theone or more second purchase details, or the at least one payment detail;provide the at least one payment detail to the first vendor via the API;and retrieve at least one first transaction record corresponding to thepurchase via the API, wherein the middleware platform is communicativelycoupled to the first e-commerce platform and is configured to: retrievethe one or more second purchase details from the second e-commerceplatform via the additional API; provide the at least one payment detailto the second e-commerce platform; retrieve, from the second e-commerceplatform, at least one second transaction record corresponding to thepurchase; and forward the at least one second transaction record to thefirst e-commerce platform.
 11. The one or more media of claim 10,wherein the computer system is a mobile device, wherein the firste-commerce platform is configured to: cause the at least one transactionto be generated based on an interaction of the end user with the mobiledevice, wherein the interaction comprises: contact of the end userdetected by at least one display unit associated with the mobile device;verification of the at least one payment detail by the mobile device; orthe contact and the verification; cause at least one invoice associatedwith the at least one transaction to be generated, the at least oneinvoice including the at least one first transaction record and the atleast one second transaction record, wherein the at least one firsttransaction record and the at least one second transaction record eachinclude an authorization code, a purchase confirmation, or theauthorization code and the purchase confirmation.
 12. The one or moremedia of claim 1, wherein the plurality of attributes comprise a colorof the object, a type of the object, and a sub-type of the object, theoperations comprise: generating, from the computer system, a searchrequest for determining the first set of candidate items and the secondset of candidate items, wherein: the search request requests candidateitems that are determined to have attributes similar to the plurality ofattributes of the object, the search request causes the first set ofcandidate items to be selected from a first plurality of items obtainedfrom a first online catalog of items associated with the first vendorvia the API, and the search request causes the second set of candidateitems to be selected from a second plurality of items obtained from asecond online catalog of items associated with the additional API, thesecond online catalog of items being different from the first onlinecatalog of items.
 13. The one or more media of claim 1, wherein: thecomputer system comprises a mobile device; the image is captured with acamera of the mobile device; the plurality of attributes comprise acolor of the object, a type of the object, and a sub-type of the object;the object is a shoe; the type is shoe; the sub-type indicates whetherthe shoe is a hightop; the plurality of attributes include a material ofthe shoe; the plurality of attributes include a brand of the shoe; thefirst set of candidate items, the second set of candidate items, or boththe first set of candidate items and the second set of candidate itemsinclude an image of a shoe that matches at least three of the pluralityof attributes; and the first set of candidate items, the second set ofcandidate items, or both the first set of candidate items and the secondset of candidate items includes a shoe that does not match at least oneof the plurality of attributes.
 14. The one or more media of claim 1,wherein: the computer system comprises a mobile device; the first vendoris part of a group of vendors of a remotely hosted vendor network,wherein the remotely hosted vendor network is configured to affiliate aplatform executing at least in part on the mobile device with members ofthe group of vendors; and the second vendor is not part of the group ofvendors in the vendor network; the one or more item attributes include atextual attribute, an image attribute, or the textual attribute and theimage attribute; the textual attribute includes at least one of a size,a color, a material, a quantity, an item description, or a un it ofmetadata; and the image attribute includes at least one of a hue, asaturation, a brightness, a shade, or a tint.
 15. One or more tangible,non-transitory, computer-readable media storing instructions that whenexecuted by one or more processors effectuate operations comprising:obtaining, with a computer system, an image from an imaging device or amemory; determining, with the computer system, with image recognition, aplurality of attributes of an object depicted in the image; determining,with the computer system, based on the plurality of attributes, a firstset of candidate items and a second set of candidate items, wherein eachof the first set of candidate items is available for purchase from afirst vendor and each of the second set of candidate items is availablefor purchase from a second vendor; and causing, with the computersystem, a user interface to be presented, the user interface comprisingdescriptions of the first set of candidate items and descriptions of thesecond set of candidate items, wherein the operations further comprise:instantiating a first e-commerce platform, wherein memory of thecomputer system is configured to securely store at least one paymentdetail corresponding to an end user of the computer system, the firste-commerce platform being associated with a vendor network including thefirst vendor, the first e-commerce platform being configured to:determine that at least a first item purchasable from the first vendorand a second sale item purchasable from a second vendor were selected,wherein the first item was selected from the first set of candidateitems and the second item was selected from the second set of candidateitems, and wherein the second vendor is external to the vendor network;invoke a middleware platform configured to connect the first e-commerceplatform to a second e-commerce platform associated with the secondvendor; retrieve one or more first purchase details associated with thefirst item via at least one Application Programming Interface (API), theat least one API being associated with the vendor network, the firstvendor, or the first vendor and the vendor network; retrieve one or moresecond purchase details associated with the second item via themiddleware platform using an additional API that is different from theat least one API associated with the vendor network, the middlewareplatform being configured to connect the first e-commerce platform tothe second e-commerce platform; cause at least one transactioncorresponding to a purchase of the first item and the second item to begenerated based on the one or more first purchase details, the one ormore second purchase details, and the at least one payment detail;provide the at least one payment detail to the first vendor via the atleast one API; provide the at least one payment detail to the secondvendor via the middleware platform; retrieve at least one firsttransaction record corresponding to the purchase via the at least oneAPI; retrieve at least one second transaction record corresponding tothe purchase via the middleware platform using the additional API; andcause at least one invoice associated with the at least one transactionto be generated, the at least one invoice including the at least onefirst transaction record and the at least one second transaction record.16. The one or more media of claim 15, wherein: the at least one paymentdetail includes at least one of a user identity, an address, an accountnumber, a security detail, or a method of payment; and the at least onesecurity detail includes a value indicative of a fingerprint; the one ormore first purchase details and the one or more second purchase detailsinclude at least one of a vendor identity, a quantity, a size, a productcode, an item price, a shipping detail, an item availability, and a taxrate; the one or more second purchase details associated with the secondsale item comprises a current pricing information associated with thesecond sale item, availability information associated with the secondsale item, or shipping information associated with the second sale itemfrom the second vendor; and the at least one first transaction recordand the at least one second transaction record each include a purchaseconfirmation, an authorization code, or the purchase confirmation andthe authorization code.
 17. The one or more media of claim 15, whereinthe middleware platform is configured to: provide purchase informationto the first e-commerce platform; retrieve the at least one paymentdetail from the first e-commerce platform; provide the at least onepayment detail to the second e-commerce platform to complete a portionof the purchase associated with the second item; retrieve at least oneadditional transaction record corresponding to the portion of thepurchase from the second e-commerce platform; and provide the at leastone additional transaction record to the first e-commerce platform,wherein the at least one invoice further includes the at least oneadditional transaction record.
 18. The one or more media of claim 1,wherein the operations comprise: receiving a selection of the first itemand the second item to be purchased, the first item being from the firstset of candidate items and the second item being from the second set ofcandidate items; calling the API, wherein: the API is configured todetermine one or more of a price, a quantity, a size, or a descriptionassociated with a portion of the purchase associated with the firstitem, the API, and a middleware platform is configured to determine oneor more of a price, a quantity, a size, and a description associatedwith a portion of the purchase associated with the second item from thesecond vendor, wherein the second vendor is unassociated with the vendornetwork.
 19. A method implemented by a computer system configured toexecute one or more computer program instructions, the methodcomprising: obtaining, with the computer system, an image; determining,with the computer system, with image recognition, a plurality ofattributes of an object depicted in the image; determining, with thecomputer system, based on the plurality of attributes, a first set ofcandidate items and a second set of candidate items, wherein each of thefirst set of candidate items is available for purchase from a firstvendor and each of the second set of candidate items is available forpurchase from a second vendor; and causing, with the computer system, auser interface to be presented, the user interface comprisingdescriptions of the first set of candidate items and descriptions of thesecond set of candidate items, wherein the first vendor is part of avendor affiliate network including a plurality of vendors, wherein theuser interface is configured to respond to a user selection of a firstitem from the first set of candidate items by causing the computersystem to interface with an additional computer system of the firstvendor via an application program interface (API) request of an API ofthe vendor affiliate network, wherein API of the vendor affiliatenetwork is supported by each of the plurality of vendors; wherein thesecond vendor is not part of the vendor network; wherein the userinterface is configured to respond to a user selection of a second itemfrom the second set of candidate items by causing the computer system tointerface with an additional computer system of the second vendor via anadditional API that is different from the API of the vendor affiliatenetwork; wherein the additional API is configured to cause a third-partycomputer system to place the computer system in communication with theadditional computer system of the second vendor to obtain purchaseinformation associated with the second item; wherein the API request isconfigured to cause the computer system to obtain purchase informationof the first item from the additional computer system of the firstvendor, the purchase information comprising available sizes and colorsof the first item; and wherein the purchase information of the firstitem and the purchase information of the second item are presentedwithin the user interface.